package com.li.forum.utils;

import com.li.forum.model.User;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.codec.digest.DigestUtils;

@Slf4j
public class MD5Utils {
    
    //加密传入的字符串，返回加密后的结果
    public static String md5(String str){
        return DigestUtils.md5Hex(str);
    }
    
    /**
     * 加密密码
     * @param str 原密码
     * @param salt 盐值
     * @return 密文
     */
    public static String md5Salt(String str,  String salt){
        return md5(md5(str) + salt);
    }
    
    public static Boolean checkPassword(String password, User user){
        //校验密码，明文密码与盐值进行加密与密文对比
        String encryptPassword = MD5Utils.md5Salt(password, user.getSalt());
        //登录失败
        if(!encryptPassword.equalsIgnoreCase(user.getPassword())){
            return false;
        }
        return true;
    }

}
